package cn.maszy.model.investment;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class B_T_Ufp_WorkExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    protected int limitStart = -1;

    protected int limitEnd = -1;

    public B_T_Ufp_WorkExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimitStart(int limitStart) {
        this.limitStart=limitStart;
    }

    public int getLimitStart() {
        return limitStart;
    }

    public void setLimitEnd(int limitEnd) {
        this.limitEnd=limitEnd;
    }

    public int getLimitEnd() {
        return limitEnd;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                return ;
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                return ;
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                return ;
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andUuidIsNull() {
            addCriterion("uuid is null");
            return (Criteria) this;
        }

        public Criteria andUuidIsNotNull() {
            addCriterion("uuid is not null");
            return (Criteria) this;
        }

        public Criteria andUuidEqualTo(String value) {
            addCriterion("uuid =", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidNotEqualTo(String value) {
            addCriterion("uuid <>", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidGreaterThan(String value) {
            addCriterion("uuid >", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidGreaterThanOrEqualTo(String value) {
            addCriterion("uuid >=", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidLessThan(String value) {
            addCriterion("uuid <", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidLessThanOrEqualTo(String value) {
            addCriterion("uuid <=", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidLike(String value) {
            addCriterion("uuid like", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidNotLike(String value) {
            addCriterion("uuid not like", value, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidIn(List<String> values) {
            addCriterion("uuid in", values, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidNotIn(List<String> values) {
            addCriterion("uuid not in", values, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidBetween(String value1, String value2) {
            addCriterion("uuid between", value1, value2, "uuid");
            return (Criteria) this;
        }

        public Criteria andUuidNotBetween(String value1, String value2) {
            addCriterion("uuid not between", value1, value2, "uuid");
            return (Criteria) this;
        }

        public Criteria andWorkidIsNull() {
            addCriterion("workid is null");
            return (Criteria) this;
        }

        public Criteria andWorkidIsNotNull() {
            addCriterion("workid is not null");
            return (Criteria) this;
        }

        public Criteria andWorkidEqualTo(String value) {
            addCriterion("workid =", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidNotEqualTo(String value) {
            addCriterion("workid <>", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidGreaterThan(String value) {
            addCriterion("workid >", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidGreaterThanOrEqualTo(String value) {
            addCriterion("workid >=", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidLessThan(String value) {
            addCriterion("workid <", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidLessThanOrEqualTo(String value) {
            addCriterion("workid <=", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidLike(String value) {
            addCriterion("workid like", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidNotLike(String value) {
            addCriterion("workid not like", value, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidIn(List<String> values) {
            addCriterion("workid in", values, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidNotIn(List<String> values) {
            addCriterion("workid not in", values, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidBetween(String value1, String value2) {
            addCriterion("workid between", value1, value2, "workid");
            return (Criteria) this;
        }

        public Criteria andWorkidNotBetween(String value1, String value2) {
            addCriterion("workid not between", value1, value2, "workid");
            return (Criteria) this;
        }

        public Criteria andWorknameIsNull() {
            addCriterion("workname is null");
            return (Criteria) this;
        }

        public Criteria andWorknameIsNotNull() {
            addCriterion("workname is not null");
            return (Criteria) this;
        }

        public Criteria andWorknameEqualTo(String value) {
            addCriterion("workname =", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameNotEqualTo(String value) {
            addCriterion("workname <>", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameGreaterThan(String value) {
            addCriterion("workname >", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameGreaterThanOrEqualTo(String value) {
            addCriterion("workname >=", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameLessThan(String value) {
            addCriterion("workname <", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameLessThanOrEqualTo(String value) {
            addCriterion("workname <=", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameLike(String value) {
            addCriterion("workname like", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameNotLike(String value) {
            addCriterion("workname not like", value, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameIn(List<String> values) {
            addCriterion("workname in", values, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameNotIn(List<String> values) {
            addCriterion("workname not in", values, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameBetween(String value1, String value2) {
            addCriterion("workname between", value1, value2, "workname");
            return (Criteria) this;
        }

        public Criteria andWorknameNotBetween(String value1, String value2) {
            addCriterion("workname not between", value1, value2, "workname");
            return (Criteria) this;
        }

        public Criteria andWorktimeIsNull() {
            addCriterion("worktime is null");
            return (Criteria) this;
        }

        public Criteria andWorktimeIsNotNull() {
            addCriterion("worktime is not null");
            return (Criteria) this;
        }

        public Criteria andWorktimeEqualTo(String value) {
            addCriterion("worktime =", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeNotEqualTo(String value) {
            addCriterion("worktime <>", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeGreaterThan(String value) {
            addCriterion("worktime >", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeGreaterThanOrEqualTo(String value) {
            addCriterion("worktime >=", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeLessThan(String value) {
            addCriterion("worktime <", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeLessThanOrEqualTo(String value) {
            addCriterion("worktime <=", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeLike(String value) {
            addCriterion("worktime like", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeNotLike(String value) {
            addCriterion("worktime not like", value, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeIn(List<String> values) {
            addCriterion("worktime in", values, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeNotIn(List<String> values) {
            addCriterion("worktime not in", values, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeBetween(String value1, String value2) {
            addCriterion("worktime between", value1, value2, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorktimeNotBetween(String value1, String value2) {
            addCriterion("worktime not between", value1, value2, "worktime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeIsNull() {
            addCriterion("workstime is null");
            return (Criteria) this;
        }

        public Criteria andWorkstimeIsNotNull() {
            addCriterion("workstime is not null");
            return (Criteria) this;
        }

        public Criteria andWorkstimeEqualTo(String value) {
            addCriterion("workstime =", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeNotEqualTo(String value) {
            addCriterion("workstime <>", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeGreaterThan(String value) {
            addCriterion("workstime >", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeGreaterThanOrEqualTo(String value) {
            addCriterion("workstime >=", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeLessThan(String value) {
            addCriterion("workstime <", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeLessThanOrEqualTo(String value) {
            addCriterion("workstime <=", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeLike(String value) {
            addCriterion("workstime like", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeNotLike(String value) {
            addCriterion("workstime not like", value, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeIn(List<String> values) {
            addCriterion("workstime in", values, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeNotIn(List<String> values) {
            addCriterion("workstime not in", values, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeBetween(String value1, String value2) {
            addCriterion("workstime between", value1, value2, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorkstimeNotBetween(String value1, String value2) {
            addCriterion("workstime not between", value1, value2, "workstime");
            return (Criteria) this;
        }

        public Criteria andWorketimeIsNull() {
            addCriterion("worketime is null");
            return (Criteria) this;
        }

        public Criteria andWorketimeIsNotNull() {
            addCriterion("worketime is not null");
            return (Criteria) this;
        }

        public Criteria andWorketimeEqualTo(String value) {
            addCriterion("worketime =", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeNotEqualTo(String value) {
            addCriterion("worketime <>", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeGreaterThan(String value) {
            addCriterion("worketime >", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeGreaterThanOrEqualTo(String value) {
            addCriterion("worketime >=", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeLessThan(String value) {
            addCriterion("worketime <", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeLessThanOrEqualTo(String value) {
            addCriterion("worketime <=", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeLike(String value) {
            addCriterion("worketime like", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeNotLike(String value) {
            addCriterion("worketime not like", value, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeIn(List<String> values) {
            addCriterion("worketime in", values, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeNotIn(List<String> values) {
            addCriterion("worketime not in", values, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeBetween(String value1, String value2) {
            addCriterion("worketime between", value1, value2, "worketime");
            return (Criteria) this;
        }

        public Criteria andWorketimeNotBetween(String value1, String value2) {
            addCriterion("worketime not between", value1, value2, "worketime");
            return (Criteria) this;
        }

        public Criteria andAfkIsNull() {
            addCriterion("afk is null");
            return (Criteria) this;
        }

        public Criteria andAfkIsNotNull() {
            addCriterion("afk is not null");
            return (Criteria) this;
        }

        public Criteria andAfkEqualTo(String value) {
            addCriterion("afk =", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkNotEqualTo(String value) {
            addCriterion("afk <>", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkGreaterThan(String value) {
            addCriterion("afk >", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkGreaterThanOrEqualTo(String value) {
            addCriterion("afk >=", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkLessThan(String value) {
            addCriterion("afk <", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkLessThanOrEqualTo(String value) {
            addCriterion("afk <=", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkLike(String value) {
            addCriterion("afk like", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkNotLike(String value) {
            addCriterion("afk not like", value, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkIn(List<String> values) {
            addCriterion("afk in", values, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkNotIn(List<String> values) {
            addCriterion("afk not in", values, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkBetween(String value1, String value2) {
            addCriterion("afk between", value1, value2, "afk");
            return (Criteria) this;
        }

        public Criteria andAfkNotBetween(String value1, String value2) {
            addCriterion("afk not between", value1, value2, "afk");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismIsNull() {
            addCriterion("absenteeism is null");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismIsNotNull() {
            addCriterion("absenteeism is not null");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismEqualTo(String value) {
            addCriterion("absenteeism =", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismNotEqualTo(String value) {
            addCriterion("absenteeism <>", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismGreaterThan(String value) {
            addCriterion("absenteeism >", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismGreaterThanOrEqualTo(String value) {
            addCriterion("absenteeism >=", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismLessThan(String value) {
            addCriterion("absenteeism <", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismLessThanOrEqualTo(String value) {
            addCriterion("absenteeism <=", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismLike(String value) {
            addCriterion("absenteeism like", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismNotLike(String value) {
            addCriterion("absenteeism not like", value, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismIn(List<String> values) {
            addCriterion("absenteeism in", values, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismNotIn(List<String> values) {
            addCriterion("absenteeism not in", values, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismBetween(String value1, String value2) {
            addCriterion("absenteeism between", value1, value2, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andAbsenteeismNotBetween(String value1, String value2) {
            addCriterion("absenteeism not between", value1, value2, "absenteeism");
            return (Criteria) this;
        }

        public Criteria andLateIsNull() {
            addCriterion("Late is null");
            return (Criteria) this;
        }

        public Criteria andLateIsNotNull() {
            addCriterion("Late is not null");
            return (Criteria) this;
        }

        public Criteria andLateEqualTo(String value) {
            addCriterion("Late =", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateNotEqualTo(String value) {
            addCriterion("Late <>", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateGreaterThan(String value) {
            addCriterion("Late >", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateGreaterThanOrEqualTo(String value) {
            addCriterion("Late >=", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateLessThan(String value) {
            addCriterion("Late <", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateLessThanOrEqualTo(String value) {
            addCriterion("Late <=", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateLike(String value) {
            addCriterion("Late like", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateNotLike(String value) {
            addCriterion("Late not like", value, "late");
            return (Criteria) this;
        }

        public Criteria andLateIn(List<String> values) {
            addCriterion("Late in", values, "late");
            return (Criteria) this;
        }

        public Criteria andLateNotIn(List<String> values) {
            addCriterion("Late not in", values, "late");
            return (Criteria) this;
        }

        public Criteria andLateBetween(String value1, String value2) {
            addCriterion("Late between", value1, value2, "late");
            return (Criteria) this;
        }

        public Criteria andLateNotBetween(String value1, String value2) {
            addCriterion("Late not between", value1, value2, "late");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyIsNull() {
            addCriterion("leaveearly is null");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyIsNotNull() {
            addCriterion("leaveearly is not null");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyEqualTo(String value) {
            addCriterion("leaveearly =", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyNotEqualTo(String value) {
            addCriterion("leaveearly <>", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyGreaterThan(String value) {
            addCriterion("leaveearly >", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyGreaterThanOrEqualTo(String value) {
            addCriterion("leaveearly >=", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyLessThan(String value) {
            addCriterion("leaveearly <", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyLessThanOrEqualTo(String value) {
            addCriterion("leaveearly <=", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyLike(String value) {
            addCriterion("leaveearly like", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyNotLike(String value) {
            addCriterion("leaveearly not like", value, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyIn(List<String> values) {
            addCriterion("leaveearly in", values, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyNotIn(List<String> values) {
            addCriterion("leaveearly not in", values, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyBetween(String value1, String value2) {
            addCriterion("leaveearly between", value1, value2, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andLeaveearlyNotBetween(String value1, String value2) {
            addCriterion("leaveearly not between", value1, value2, "leaveearly");
            return (Criteria) this;
        }

        public Criteria andDepnameIsNull() {
            addCriterion("depName is null");
            return (Criteria) this;
        }

        public Criteria andDepnameIsNotNull() {
            addCriterion("depName is not null");
            return (Criteria) this;
        }

        public Criteria andDepnameEqualTo(String value) {
            addCriterion("depName =", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameNotEqualTo(String value) {
            addCriterion("depName <>", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameGreaterThan(String value) {
            addCriterion("depName >", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameGreaterThanOrEqualTo(String value) {
            addCriterion("depName >=", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameLessThan(String value) {
            addCriterion("depName <", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameLessThanOrEqualTo(String value) {
            addCriterion("depName <=", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameLike(String value) {
            addCriterion("depName like", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameNotLike(String value) {
            addCriterion("depName not like", value, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameIn(List<String> values) {
            addCriterion("depName in", values, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameNotIn(List<String> values) {
            addCriterion("depName not in", values, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameBetween(String value1, String value2) {
            addCriterion("depName between", value1, value2, "depname");
            return (Criteria) this;
        }

        public Criteria andDepnameNotBetween(String value1, String value2) {
            addCriterion("depName not between", value1, value2, "depname");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelIsNull() {
            addCriterion("abusinesstravel is null");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelIsNotNull() {
            addCriterion("abusinesstravel is not null");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelEqualTo(String value) {
            addCriterion("abusinesstravel =", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelNotEqualTo(String value) {
            addCriterion("abusinesstravel <>", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelGreaterThan(String value) {
            addCriterion("abusinesstravel >", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelGreaterThanOrEqualTo(String value) {
            addCriterion("abusinesstravel >=", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelLessThan(String value) {
            addCriterion("abusinesstravel <", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelLessThanOrEqualTo(String value) {
            addCriterion("abusinesstravel <=", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelLike(String value) {
            addCriterion("abusinesstravel like", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelNotLike(String value) {
            addCriterion("abusinesstravel not like", value, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelIn(List<String> values) {
            addCriterion("abusinesstravel in", values, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelNotIn(List<String> values) {
            addCriterion("abusinesstravel not in", values, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelBetween(String value1, String value2) {
            addCriterion("abusinesstravel between", value1, value2, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andAbusinesstravelNotBetween(String value1, String value2) {
            addCriterion("abusinesstravel not between", value1, value2, "abusinesstravel");
            return (Criteria) this;
        }

        public Criteria andPostIsNull() {
            addCriterion("post is null");
            return (Criteria) this;
        }

        public Criteria andPostIsNotNull() {
            addCriterion("post is not null");
            return (Criteria) this;
        }

        public Criteria andPostEqualTo(String value) {
            addCriterion("post =", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostNotEqualTo(String value) {
            addCriterion("post <>", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostGreaterThan(String value) {
            addCriterion("post >", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostGreaterThanOrEqualTo(String value) {
            addCriterion("post >=", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostLessThan(String value) {
            addCriterion("post <", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostLessThanOrEqualTo(String value) {
            addCriterion("post <=", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostLike(String value) {
            addCriterion("post like", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostNotLike(String value) {
            addCriterion("post not like", value, "post");
            return (Criteria) this;
        }

        public Criteria andPostIn(List<String> values) {
            addCriterion("post in", values, "post");
            return (Criteria) this;
        }

        public Criteria andPostNotIn(List<String> values) {
            addCriterion("post not in", values, "post");
            return (Criteria) this;
        }

        public Criteria andPostBetween(String value1, String value2) {
            addCriterion("post between", value1, value2, "post");
            return (Criteria) this;
        }

        public Criteria andPostNotBetween(String value1, String value2) {
            addCriterion("post not between", value1, value2, "post");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIsNull() {
            addCriterion("is_delete is null");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIsNotNull() {
            addCriterion("is_delete is not null");
            return (Criteria) this;
        }

        public Criteria andIsDeleteEqualTo(Integer value) {
            addCriterion("is_delete =", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotEqualTo(Integer value) {
            addCriterion("is_delete <>", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteGreaterThan(Integer value) {
            addCriterion("is_delete >", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_delete >=", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteLessThan(Integer value) {
            addCriterion("is_delete <", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteLessThanOrEqualTo(Integer value) {
            addCriterion("is_delete <=", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIn(List<Integer> values) {
            addCriterion("is_delete in", values, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotIn(List<Integer> values) {
            addCriterion("is_delete not in", values, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteBetween(Integer value1, Integer value2) {
            addCriterion("is_delete between", value1, value2, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotBetween(Integer value1, Integer value2) {
            addCriterion("is_delete not between", value1, value2, "isDelete");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("create_user is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("create_user is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("create_user =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("create_user <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("create_user >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("create_user >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("create_user <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("create_user <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("create_user like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("create_user not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("create_user in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("create_user not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("create_user between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("create_user not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNull() {
            addCriterion("update_user is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNotNull() {
            addCriterion("update_user is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserEqualTo(String value) {
            addCriterion("update_user =", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotEqualTo(String value) {
            addCriterion("update_user <>", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThan(String value) {
            addCriterion("update_user >", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanOrEqualTo(String value) {
            addCriterion("update_user >=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThan(String value) {
            addCriterion("update_user <", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanOrEqualTo(String value) {
            addCriterion("update_user <=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLike(String value) {
            addCriterion("update_user like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotLike(String value) {
            addCriterion("update_user not like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIn(List<String> values) {
            addCriterion("update_user in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotIn(List<String> values) {
            addCriterion("update_user not in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserBetween(String value1, String value2) {
            addCriterion("update_user between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotBetween(String value1, String value2) {
            addCriterion("update_user not between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}